package com.simple.trade.service.vm;

import com.fasterxml.jackson.core.JsonProcessingException;
import com.simple.common.entity.po.Notify;
import com.simple.common.entity.po.NotifyChannel;
import com.simple.common.entity.po.sys.Trade;

/**
 * @author yasud
 * @date 2020年10月12日 11:46
 * @description
 **/
public interface NotifyService {

    /**
     * 创建消息
     * @param notifyChannel
     * @param trade
     * @throws JsonProcessingException
     * @return
     */
    Notify createNotify(NotifyChannel notifyChannel, Trade trade) throws JsonProcessingException;


    /**
     *
     * @param notify
     */
    void sendToMerchant(Notify notify);

    /**
     * 查看这个交易id下是否有回调
     * @param tradeId
     * @return
     */
    int countNotify(Long tradeId);

    Notify getNotifyByTradeNo(Long tradeNo);
}
